Eecient Incremental Run-time Specialization for Free

نویسندگان

  • Renaud Marlet
  • Charles Consel
  • Philippe Boinot
چکیده

Availability of data in a program determines computation stages. Incremental partial evaluation exploit these stages for optimization: it allows further specialization to be performed as data become available at later stages. The fundamental advantage of incremental specialization is to factorize the specialization process. As a result, specializing a program at a given stage costs considerably less than specializing it once all the data are available. We present a realistic and exible approach to achieve eecient incremental run-time specialization. Rather than developing speciic techniques, as previously proposed, we are able to re-use existing technology by iterating a specialization process. Moreover, in doing so, we do not lose any specialization opportunities. This approach makes it possible to exploit nested quasi-invariants and to speed up the run-time specialization process. Our approach has been implemented in Tempo, a specializer for C programs that is publicly available. A preliminary experiment connrms that incremental specialization can greatly speed up the specialization process .

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

cient Incremental Run Time Specialization for Free Renaud

Availability of data in a program determines compu tation stages Incremental partial evaluation exploit these stages for optimization it allows further special ization to be performed as data become available at later stages The fundamental advantage of incremental specialization is to factorize the specialization process As a result specializing a program at a given stage costs considerably le...

متن کامل

Static and Dynamic Program

Interpretation and run-time compilation techniques are increasingly important because they can support heterogeneous architectures, evolving programming languages, and dynamically-loaded code. Interpretation is simple to implement, but yields poor performance. Run-time compilation yields better performance, but is costly to implement. One way to preserve simplicity but obtain good performance i...

متن کامل

Implementing Memoization for Partial Evaluation

Memoization is a key ingredient in every partial evaluator. It enables folding by caching previously specialized functions. It is essential to make polyvariant specialization terminate. Its implementation is reasonably straightforward in a standard specializer that represents functions by closures. With the advent of handwritten program-generator generators (PGGs), implementing memoization gets...

متن کامل

Run Time Compile Time Compile − time Specialization Run − time

Because of its wide applicability, many eecient implementations of the Fast Fourier Transform have been developed. We propose that an eecient implementation can be produced automatically and reliably by partial evaluation. Partial evaluation of an unoptimized implementation produces a speedup of over 9 times. The automatically generated result of partial evaluation has performance comparable to...

متن کامل

A General Approach for Run - Time Specializationand its Application

Specializing programs with respect to run-time invariants is an optimization technique that has shown to improve the performance of programs substantially. It allows a program to adapt to execution contexts that are valid for a limited time. Run-time specialization is being actively investigated in a variety of areas. For example, recently, major operating system research projects have been foc...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999